<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                template="/templates/mantenimiento.xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:fn="http://java.sun.com/jsp/jstl/functions"
                xmlns:p="http://primefaces.org/ui"
                    
                xmlns:r="http://richfaces.org">
    <ui:define name="title">
        Administración de especialidad
    </ui:define>   
    <ui:define name="datos">

        <p:accordionPanel>
            <p:tab title="Especialidad">

                <h:form  id="formDatos">
                    <p:focus id="foco" />
                    <h:panelGrid columns="3" id="panelIngreso">
                        <h:graphicImage library="images/ajax" name="bullet.gif" />
                        <h:outputLabel for="nombre" value="Nombre:" />
                        <p:inputText id="nombre" label="Nombre"  size="40" maxlength="60" required="true" value="#{jsfEspecialidad.object.cesNombre}" >
                        </p:inputText>

                        <f:verbatim/>
                        <f:verbatim/> 
                        <p:message for="nombre" />

                        <f:verbatim/>
                        <h:outputLabel rendered="#{not empty jsfEspecialidad.object.cesId}" value="Activo:" />
                        <p:selectBooleanCheckbox rendered="#{not empty jsfEspecialidad.object.cesId}"  id="estado"  value="#{jsfEspecialidad.estado}">
                        </p:selectBooleanCheckbox>

                        <f:verbatim/>
                        <f:verbatim/> 
                        <p:message for="estado" />

                    </h:panelGrid>
                    <center>
                        <h:panelGrid columns="2" >
                            <h:panelGroup id="panelBotones">
                                <p:commandButton id="btGrabar" process="@form" update="formDatos" value="Grabar" action="#{jsfEspecialidad.grabarAction}"  title="Grabar registro">
                                </p:commandButton>
                                <p:commandButton id="btNuevo" process="@none" update="formDatos" value="Nuevo" action="#{jsfEspecialidad.nuevoAction}"  title="Limpiar o crear nuevo registro">
                                </p:commandButton>

                            </h:panelGroup>
                            <p:ajaxStatus id="commonStatus">
                                <f:facet name="start">
                                    <h:graphicImage library="images/ajax" name="status2.gif"/>
                                </f:facet>
                            </p:ajaxStatus>
                        </h:panelGrid>
                    </center>
                    <p:message for="formDatos">
                        <f:facet name="errorMarker">
                            <h:graphicImage library="images/ajax" name="warning.gif"/>
                        </f:facet>
                        <f:facet name="infoMarker">
                            <h:graphicImage library="images/ajax" name="passed.gif"/>
                        </f:facet>
                    </p:message>


                    <div class="separador" />
                    <p /> 
                    <h:panelGrid id="panelLista"  border ="0">
                        <p:dataTable emptyMessage="No se encontraro registros"  id="listaSimple" value="#{jsfEspecialidad.lista}" var="item"
                                     rendered="#{jsfEspecialidad.lista.size()>0}"  rows="10"
                                     paginator="true"
                                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="5,10,15" rowIndexVar="rowIndex" rowStyleClass="#{(rowIndex mod 2) eq 0 ? 'odd-row' : 'even-row'}">
                            <p:column headerText="Nombre"  >
                                <h:outputText value="#{item.cesNombre}"/>
                            </p:column>
                            <p:column headerText="Estado"  >
                                <h:outputText value="#{item.cesEstado eq 1 ? 'ACTIVO':'INACTIVO'}" styleClass="#{item.cesEstado==1?'textoNegrita':'campo-obligatorio textoNegrita'}"/>
                            </p:column> 
                            <p:column headerText="Acción" >
                                <r:commandLink render="panelIngreso" execute="@this"  action="#{jsfEspecialidad.editarAction(item)}" title="Editar">
                                    <h:graphicImage library="images/icons" name="page-edit-icon-24.png" styleClass="pic" />

                                </r:commandLink>
                                <r:commandLink render="formDatos" execute="@this"  action="#{jsfEspecialidad.eliminarAction(item)}" title="Eliminar" onclick="if (!confirm('Seguro que desea eliminar el registro?')) {
                                            formLista.reset();
                                            return false;
                                        }">
                                    <h:graphicImage library="images/icons" name="Document-Delete-icon-24.png" styleClass="pic" />
                                </r:commandLink>
                            </p:column>
                        </p:dataTable>
                    </h:panelGrid>
                    <p:growl id="growl"  showDetail="true" life="6500" /> 
                </h:form>


            </p:tab>
            <p:tab title="Sub-Especialidad - Categoria">


                <h:form  id="formDatosSub">

                    <h:panelGrid columns="3" id="panelIngresoSub">
                        <h:graphicImage library="images/ajax" name="bullet.gif" />
                        <h:outputLabel  value="Especialidades:" />
                        <p:selectOneListbox style="width: 270px"  label="Especialidades" id="especialidades" required="true"  converter="JsfConverterEspecialidad"  value="#{jsfEspecialidad.subEspecialidad.cexEspecialidad}" >                              
                            <f:selectItems value="#{jsfEspecialidad.selectedItem}" var="item"/>
                            <f:ajax event="change" execute="especialidades" render="panelListaSub" listener="#{jsfEspecialidad.cargarListaSubEspecialidad()}"/>
                        </p:selectOneListbox>

                        <f:verbatim/>
                        <f:verbatim/> 
                        <p:message for="especialidades" />



                        <h:graphicImage library="images/ajax" name="bullet.gif" />
                        <h:outputLabel  value="Nombre:" />
                        <p:inputText id="nombreSub" label="Nombre Subespecialidad"  size="40" maxlength="60" required="true" value="#{jsfEspecialidad.subEspecialidad.cesNombre}" />



                        <f:verbatim/>
                        <f:verbatim/> 
                        <p:message for="nombreSub" />

                        <h:graphicImage library="images/ajax" name="bullet.gif" />
                        <h:outputLabel  value="Código:" />
                        <p:inputText id="codigo" label="Código"  size="40" maxlength="60" required="true" value="#{jsfEspecialidad.subEspecialidad.cesCodigo}" />

                        <f:verbatim/>
                        <f:verbatim/> 
                        <p:message for="codigo" />


                        <f:verbatim/>
                        <h:outputLabel rendered="#{not empty jsfEspecialidad.subEspecialidad.cesId}" value="Activo:" />
                        <p:selectBooleanCheckbox rendered="#{not empty jsfEspecialidad.subEspecialidad.cesId}"  id="estadoSub"  value="#{jsfEspecialidad.subEstado}">
                        </p:selectBooleanCheckbox>

                        <f:verbatim/>
                        <p:message for="estadoSub" />
                        <f:verbatim/>
                    </h:panelGrid>
                    <center>
                        <h:panelGrid columns="2" >
                            <h:panelGroup id="panelBotonesSub">
                                <p:commandButton id="btGrabarSub" process="formDatosSub" update="formDatosSub" value="Grabar" action="#{jsfEspecialidad.grabarActionSubEspecialidad()}"  title="Grabar registro">
                                </p:commandButton>
                                <p:commandButton id="btNuevoSub" process="@none" update="formDatosSub" value="Nuevo" action="#{jsfEspecialidad.nuevoActionSubespecialdiad()}"  title="Limpiar o crear nuevo registro">
                                </p:commandButton>

                            </h:panelGroup>
                            <p:ajaxStatus id="commonStatusSub">
                                <f:facet name="start">
                                    <h:graphicImage library="images/ajax" name="status2.gif"/>
                                </f:facet>
                            </p:ajaxStatus>
                        </h:panelGrid>
                    </center>
                    <p:message id="message" for="formDatosSub">
                        <f:facet  name="errorMarker">
                            <h:graphicImage library="images/ajax" name="warning.gif"/>
                        </f:facet>
                        <f:facet name="infoMarker">
                            <h:graphicImage library="images/ajax" name="passed.gif"/>
                        </f:facet>
                    </p:message>


                    <div class="separador" />
                    <p /> 
                    <h:panelGrid id="panelListaSub">
                        <p:dataTable id="listaSimpleSub" value="#{jsfEspecialidad.listaEspecialidad}" 
                                     var="item" rendered="#{jsfEspecialidad.listaEspecialidad.size()>0}"  
                                     rows="10"
                                     paginator="true"
                                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="5,10,15" rowIndexVar="rowIndex" rowStyleClass="#{(rowIndex mod 2) eq 0 ? 'odd-row' : 'even-row'}">
                            <p:column headerText="Subespecialidad" >
                                <h:outputText value="#{item.cesNombre}"/>
                            </p:column>
                            <p:column headerText="Especialidad"  >
                                <h:outputText value="#{item.cexEspecialidad.cesNombre}"/>
                            </p:column>
                            <p:column headerText="Estado"  >
                                <h:outputText value="#{item.cesEstado eq 1 ? 'ACTIVO':'INACTIVO'}" styleClass="#{item.cesEstado==1?'textoNegrita':'campo-obligatorio textoNegrita'}"/>
                            </p:column> 
                            <p:column headerText="Acción" >
                                <r:commandLink render="panelIngresoSub" execute="@this"  action="#{jsfEspecialidad.editarActionSubEspecialidad(item)}" title="Editar">
                                    <h:graphicImage library="images/icons" name="page-edit-icon-24.png" styleClass="pic" />

                                </r:commandLink>
                                <r:commandLink render="formDatosSub" execute="@this"  action="#{jsfEspecialidad.eliminarActionSubespecialidad(item)}" title="Eliminar" onclick="if (!confirm('Seguro que desea eliminar el registro?')) {
                                            formLista.reset();
                                            return false;
                                        }">
                                    <h:graphicImage library="images/icons" name="Document-Delete-icon-24.png" styleClass="pic" />
                                </r:commandLink>
                            </p:column>
                        </p:dataTable>
                    </h:panelGrid>
                    <p:growl id="growlDos"  showDetail="true" life="6500" /> 
                </h:form>                       
            </p:tab>
        </p:accordionPanel>
        <h:panelGroup >
            <h:graphicImage library="images/ajax" name="bullet.gif" />
            <h:outputText value="Campo obligatorio" styleClass="campo-obligatorio"/>
        </h:panelGroup>


    </ui:define>
</ui:composition>
